﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000733 RID: 1843
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class GetMailScRsp : IMessage<GetMailScRsp>, IMessage, IEquatable<GetMailScRsp>, IDeepCloneable<GetMailScRsp>, IBufferMessage
	{
		// Token: 0x17001790 RID: 6032
		// (get) Token: 0x060052D9 RID: 21209 RVA: 0x000E05F7 File Offset: 0x000DE7F7
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<GetMailScRsp> Parser
		{
			get
			{
				return GetMailScRsp._parser;
			}
		}

		// Token: 0x17001791 RID: 6033
		// (get) Token: 0x060052DA RID: 21210 RVA: 0x000E05FE File Offset: 0x000DE7FE
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return GetMailScRspReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17001792 RID: 6034
		// (get) Token: 0x060052DB RID: 21211 RVA: 0x000E0610 File Offset: 0x000DE810
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return GetMailScRsp.Descriptor;
			}
		}

		// Token: 0x060052DC RID: 21212 RVA: 0x000E0617 File Offset: 0x000DE817
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public GetMailScRsp()
		{
		}

		// Token: 0x060052DD RID: 21213 RVA: 0x000E0638 File Offset: 0x000DE838
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public GetMailScRsp(GetMailScRsp other) : this()
		{
			this.retcode_ = other.retcode_;
			this.totalNum_ = other.totalNum_;
			this.noticeMailList_ = other.noticeMailList_.Clone();
			this.isEnd_ = other.isEnd_;
			this.mailList_ = other.mailList_.Clone();
			this.start_ = other.start_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x060052DE RID: 21214 RVA: 0x000E06AE File Offset: 0x000DE8AE
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public GetMailScRsp Clone()
		{
			return new GetMailScRsp(this);
		}

		// Token: 0x17001793 RID: 6035
		// (get) Token: 0x060052DF RID: 21215 RVA: 0x000E06B6 File Offset: 0x000DE8B6
		// (set) Token: 0x060052E0 RID: 21216 RVA: 0x000E06BE File Offset: 0x000DE8BE
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint Retcode
		{
			get
			{
				return this.retcode_;
			}
			set
			{
				this.retcode_ = value;
			}
		}

		// Token: 0x17001794 RID: 6036
		// (get) Token: 0x060052E1 RID: 21217 RVA: 0x000E06C7 File Offset: 0x000DE8C7
		// (set) Token: 0x060052E2 RID: 21218 RVA: 0x000E06CF File Offset: 0x000DE8CF
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint TotalNum
		{
			get
			{
				return this.totalNum_;
			}
			set
			{
				this.totalNum_ = value;
			}
		}

		// Token: 0x17001795 RID: 6037
		// (get) Token: 0x060052E3 RID: 21219 RVA: 0x000E06D8 File Offset: 0x000DE8D8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<ClientMail> NoticeMailList
		{
			get
			{
				return this.noticeMailList_;
			}
		}

		// Token: 0x17001796 RID: 6038
		// (get) Token: 0x060052E4 RID: 21220 RVA: 0x000E06E0 File Offset: 0x000DE8E0
		// (set) Token: 0x060052E5 RID: 21221 RVA: 0x000E06E8 File Offset: 0x000DE8E8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool IsEnd
		{
			get
			{
				return this.isEnd_;
			}
			set
			{
				this.isEnd_ = value;
			}
		}

		// Token: 0x17001797 RID: 6039
		// (get) Token: 0x060052E6 RID: 21222 RVA: 0x000E06F1 File Offset: 0x000DE8F1
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<ClientMail> MailList
		{
			get
			{
				return this.mailList_;
			}
		}

		// Token: 0x17001798 RID: 6040
		// (get) Token: 0x060052E7 RID: 21223 RVA: 0x000E06F9 File Offset: 0x000DE8F9
		// (set) Token: 0x060052E8 RID: 21224 RVA: 0x000E0701 File Offset: 0x000DE901
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint Start
		{
			get
			{
				return this.start_;
			}
			set
			{
				this.start_ = value;
			}
		}

		// Token: 0x060052E9 RID: 21225 RVA: 0x000E070A File Offset: 0x000DE90A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as GetMailScRsp);
		}

		// Token: 0x060052EA RID: 21226 RVA: 0x000E0718 File Offset: 0x000DE918
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(GetMailScRsp other)
		{
			return other != null && (other == this || (this.Retcode == other.Retcode && this.TotalNum == other.TotalNum && this.noticeMailList_.Equals(other.noticeMailList_) && this.IsEnd == other.IsEnd && this.mailList_.Equals(other.mailList_) && this.Start == other.Start && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x060052EB RID: 21227 RVA: 0x000E07AC File Offset: 0x000DE9AC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.Retcode != 0U)
			{
				num ^= this.Retcode.GetHashCode();
			}
			if (this.TotalNum != 0U)
			{
				num ^= this.TotalNum.GetHashCode();
			}
			num ^= this.noticeMailList_.GetHashCode();
			if (this.IsEnd)
			{
				num ^= this.IsEnd.GetHashCode();
			}
			num ^= this.mailList_.GetHashCode();
			if (this.Start != 0U)
			{
				num ^= this.Start.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x060052EC RID: 21228 RVA: 0x000E0852 File Offset: 0x000DEA52
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x060052ED RID: 21229 RVA: 0x000E085A File Offset: 0x000DEA5A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x060052EE RID: 21230 RVA: 0x000E0864 File Offset: 0x000DEA64
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.Start != 0U)
			{
				output.WriteRawTag(24);
				output.WriteUInt32(this.Start);
			}
			if (this.TotalNum != 0U)
			{
				output.WriteRawTag(64);
				output.WriteUInt32(this.TotalNum);
			}
			if (this.IsEnd)
			{
				output.WriteRawTag(80);
				output.WriteBool(this.IsEnd);
			}
			if (this.Retcode != 0U)
			{
				output.WriteRawTag(88);
				output.WriteUInt32(this.Retcode);
			}
			this.mailList_.WriteTo(ref output, GetMailScRsp._repeated_mailList_codec);
			this.noticeMailList_.WriteTo(ref output, GetMailScRsp._repeated_noticeMailList_codec);
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x060052EF RID: 21231 RVA: 0x000E0918 File Offset: 0x000DEB18
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.Retcode != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.Retcode);
			}
			if (this.TotalNum != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.TotalNum);
			}
			num += this.noticeMailList_.CalculateSize(GetMailScRsp._repeated_noticeMailList_codec);
			if (this.IsEnd)
			{
				num += 2;
			}
			num += this.mailList_.CalculateSize(GetMailScRsp._repeated_mailList_codec);
			if (this.Start != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.Start);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x060052F0 RID: 21232 RVA: 0x000E09B8 File Offset: 0x000DEBB8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(GetMailScRsp other)
		{
			if (other == null)
			{
				return;
			}
			if (other.Retcode != 0U)
			{
				this.Retcode = other.Retcode;
			}
			if (other.TotalNum != 0U)
			{
				this.TotalNum = other.TotalNum;
			}
			this.noticeMailList_.Add(other.noticeMailList_);
			if (other.IsEnd)
			{
				this.IsEnd = other.IsEnd;
			}
			this.mailList_.Add(other.mailList_);
			if (other.Start != 0U)
			{
				this.Start = other.Start;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x060052F1 RID: 21233 RVA: 0x000E0A52 File Offset: 0x000DEC52
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x060052F2 RID: 21234 RVA: 0x000E0A5C File Offset: 0x000DEC5C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 80U)
				{
					if (num == 24U)
					{
						this.Start = input.ReadUInt32();
						continue;
					}
					if (num == 64U)
					{
						this.TotalNum = input.ReadUInt32();
						continue;
					}
					if (num == 80U)
					{
						this.IsEnd = input.ReadBool();
						continue;
					}
				}
				else
				{
					if (num == 88U)
					{
						this.Retcode = input.ReadUInt32();
						continue;
					}
					if (num == 114U)
					{
						this.mailList_.AddEntriesFrom(ref input, GetMailScRsp._repeated_mailList_codec);
						continue;
					}
					if (num == 122U)
					{
						this.noticeMailList_.AddEntriesFrom(ref input, GetMailScRsp._repeated_noticeMailList_codec);
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
			}
		}

		// Token: 0x04002065 RID: 8293
		private static readonly MessageParser<GetMailScRsp> _parser = new MessageParser<GetMailScRsp>(() => new GetMailScRsp());

		// Token: 0x04002066 RID: 8294
		private UnknownFieldSet _unknownFields;

		// Token: 0x04002067 RID: 8295
		public const int RetcodeFieldNumber = 11;

		// Token: 0x04002068 RID: 8296
		private uint retcode_;

		// Token: 0x04002069 RID: 8297
		public const int TotalNumFieldNumber = 8;

		// Token: 0x0400206A RID: 8298
		private uint totalNum_;

		// Token: 0x0400206B RID: 8299
		public const int NoticeMailListFieldNumber = 15;

		// Token: 0x0400206C RID: 8300
		private static readonly FieldCodec<ClientMail> _repeated_noticeMailList_codec = FieldCodec.ForMessage<ClientMail>(122U, ClientMail.Parser);

		// Token: 0x0400206D RID: 8301
		private readonly RepeatedField<ClientMail> noticeMailList_ = new RepeatedField<ClientMail>();

		// Token: 0x0400206E RID: 8302
		public const int IsEndFieldNumber = 10;

		// Token: 0x0400206F RID: 8303
		private bool isEnd_;

		// Token: 0x04002070 RID: 8304
		public const int MailListFieldNumber = 14;

		// Token: 0x04002071 RID: 8305
		private static readonly FieldCodec<ClientMail> _repeated_mailList_codec = FieldCodec.ForMessage<ClientMail>(114U, ClientMail.Parser);

		// Token: 0x04002072 RID: 8306
		private readonly RepeatedField<ClientMail> mailList_ = new RepeatedField<ClientMail>();

		// Token: 0x04002073 RID: 8307
		public const int StartFieldNumber = 3;

		// Token: 0x04002074 RID: 8308
		private uint start_;
	}
}
